package core.validate.rules;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({})
@Retention(RetentionPolicy.RUNTIME)
public @interface RuleArray {
    ArrayType type();
    Param[] params() default {};
    Items item() default @Items;
    String message() default "";

    @Target({})
    @Retention(RetentionPolicy.RUNTIME)
    @interface Items {
        RuleBoolean[] Booleans() default {};
        RuleDate[] Dates() default {};
        RuleFile[] Files() default {};
        RuleNumber[] Numbers() default {};
        RuleString[] Strings() default {};
    }
}
